#include "label.h"
#include <QDebug>
#include <QMouseEvent>

Label::Label(QWidget* parent)
    :QLabel(parent)
{

}

void Label::mousePressEvent(QMouseEvent *event)
{
    // 这个mousePressEvent是按下鼠标的左键或右键或者是滚轮都能触发
    // 我们也可以通过函数获取到当前按下的是哪一个键
    if (event->button() == Qt::LeftButton) {
        qDebug() << "按下左键";
    } else if (event->button() == Qt::RightButton) {
        qDebug() << "按下右键";
    } else if (event->button() == Qt::MidButton) {
        qDebug() << "按下中键";
    }
    // 通过event参数就可以获取到当前鼠标点击的位置坐标
//    qDebug() << "鼠标点击的位置: (" << event->x() << ", " << event->y() << ")"; // 这里的坐标是以当前的标签左上角为原点的
    qDebug() << "鼠标点击的位置: (" << event->globalX() << ", " << event->globalY() << ")"; // 而这里的坐标是以整个屏幕的左上角为原点的

}

void Label::mouseReleaseEvent(QMouseEvent *event)
{
    // 鼠标释放的事件
    if (event->button() == Qt::LeftButton) {
        qDebug() << "左键释放";
    } else if (event->button() == Qt::RightButton) {
        qDebug() << "右键释放";
    } else if (event->button() == Qt::MidButton) {
        qDebug() << "中键释放";
    }
    qDebug() << "鼠标释放的位置: (" << event->x() << ", " << event->y() << ")";

}

void Label::mouseDoubleClickEvent(QMouseEvent *event)
{
    // 鼠标双击事件
    // 鼠标释放的事件
    if (event->button() == Qt::LeftButton) {
        qDebug() << "双击左键";
    } else if (event->button() == Qt::RightButton) {
        qDebug() << "双击右键";
    } else if (event->button() == Qt::MidButton) {
        qDebug() << "双击中键";
    }
    qDebug() << "鼠标双击的位置: (" << event->x() << ", " << event->y() << ")";


}
